|
1: |
|
app(app(plus,0),y) |
→ y |
2: |
|
app(app(plus,app(s,x)),y) |
→ app(s,app(app(plus,x),y)) |
3: |
|
app(app(times,0),y) |
→ 0 |
4: |
|
app(app(times,app(s,x)),y) |
→ app(app(plus,app(app(times,x),y)),y) |
5: |
|
app(app(app(curry,g),x),y) |
→ app(app(g,x),y) |
6: |
|
app(app(map,f),nil) |
→ nil |
7: |
|
app(app(map,f),app(app(cons,x),xs)) |
→ app(app(cons,app(f,x)),app(app(map,f),xs)) |
8: |
|
inc |
→ app(map,app(app(curry,plus),app(s,0))) |
9: |
|
double |
→ app(map,app(app(curry,times),app(s,app(s,0)))) |
|
There are 22 dependency pairs:
|
10: |
|
APP(app(plus,app(s,x)),y) |
→ APP(s,app(app(plus,x),y)) |
11: |
|
APP(app(plus,app(s,x)),y) |
→ APP(app(plus,x),y) |
12: |
|
APP(app(plus,app(s,x)),y) |
→ APP(plus,x) |
13: |
|
APP(app(times,app(s,x)),y) |
→ APP(app(plus,app(app(times,x),y)),y) |
14: |
|
APP(app(times,app(s,x)),y) |
→ APP(plus,app(app(times,x),y)) |
15: |
|
APP(app(times,app(s,x)),y) |
→ APP(app(times,x),y) |
16: |
|
APP(app(times,app(s,x)),y) |
→ APP(times,x) |
17: |
|
APP(app(app(curry,g),x),y) |
→ APP(app(g,x),y) |
18: |
|
APP(app(app(curry,g),x),y) |
→ APP(g,x) |
19: |
|
APP(app(map,f),app(app(cons,x),xs)) |
→ APP(app(cons,app(f,x)),app(app(map,f),xs)) |
20: |
|
APP(app(map,f),app(app(cons,x),xs)) |
→ APP(cons,app(f,x)) |
21: |
|
APP(app(map,f),app(app(cons,x),xs)) |
→ APP(f,x) |
22: |
|
APP(app(map,f),app(app(cons,x),xs)) |
→ APP(app(map,f),xs) |
23: |
|
INC |
→ APP(map,app(app(curry,plus),app(s,0))) |
24: |
|
INC |
→ APP(app(curry,plus),app(s,0)) |
25: |
|
INC |
→ APP(curry,plus) |
26: |
|
INC |
→ APP(s,0) |
27: |
|
DOUBLE |
→ APP(map,app(app(curry,times),app(s,app(s,0)))) |
28: |
|
DOUBLE |
→ APP(app(curry,times),app(s,app(s,0))) |
29: |
|
DOUBLE |
→ APP(curry,times) |
30: |
|
DOUBLE |
→ APP(s,app(s,0)) |
31: |
|
DOUBLE |
→ APP(s,0) |
|
The approximated dependency graph contains one SCC:
{11,13,15,17-19,21,22}.